package cn.source.system.mapper;

import java.util.List;
import cn.source.system.domain.SchoolMajorYearAdmission;
import cn.source.system.domain.SchoolMajorYearAdmissionZk;
import cn.source.system.domain.SchoolYearAdmission;

/**
 * 年度学校各专业录取情况Mapper接口
 * 
 * @author sourcebyte.vip
 * @date 2024-02-20
 */
public interface SchoolMajorYearAdmissionMapper 
{
    /**
     * 查询年度学校各专业录取情况
     * 
     * @param id 年度学校各专业录取情况主键
     * @return 年度学校各专业录取情况
     */
    public SchoolMajorYearAdmission selectSchoolMajorYearAdmissionById(Long id);

    /**
     * 查询年度学校各专业录取情况列表
     * 
     * @param schoolMajorYearAdmission 年度学校各专业录取情况
     * @return 年度学校各专业录取情况集合
     */
    public List<SchoolMajorYearAdmission> selectSchoolMajorYearAdmissionList(SchoolMajorYearAdmission schoolMajorYearAdmission);
    
    public List<SchoolMajorYearAdmission> selectSchoolMajorYearAdmissionTotalList(SchoolMajorYearAdmission schoolMajorYearAdmission);
    
    public List<SchoolMajorYearAdmission> selectEmptyMajorCodeList(SchoolMajorYearAdmission schoolMajorYearAdmission);
    
    public List<SchoolMajorYearAdmission> selectSchoolMajorYearAdmissionCheckList(SchoolMajorYearAdmission schoolMajorYearAdmission);
    
    public List<SchoolMajorYearAdmission> selectSchoolZyzYearAdmissionList(SchoolMajorYearAdmission schoolMajorYearAdmission);
    
    public List<SchoolMajorYearAdmission> selectSchoolMajorZyYearAdmissionList(SchoolMajorYearAdmission schoolMajorYearAdmission);
    
    public List<SchoolMajorYearAdmission> selectSchoolMajorZyYearAdmissionDetailList(SchoolMajorYearAdmission schoolMajorYearAdmission);
    
    public List<SchoolMajorYearAdmission> selectSchoolMajorZyYearAdmissionListByZyzStr(SchoolMajorYearAdmission schoolMajorYearAdmission);
    
    public List<SchoolMajorYearAdmission> selectSchoolMajorZyYearAdmissionDetailListByZyzStr(SchoolMajorYearAdmission schoolMajorYearAdmission);


    public List<SchoolMajorYearAdmission> selectSchoolMajorYearAdmission2023List(SchoolMajorYearAdmission schoolMajorYearAdmission);

    public List<SchoolMajorYearAdmission> selectSchoolMajorYearAdmission2022List(SchoolMajorYearAdmission schoolMajorYearAdmission);

    /**
     * 新增年度学校各专业录取情况
     * 
     * @param schoolMajorYearAdmission 年度学校各专业录取情况
     * @return 结果
     */
    public int insertSchoolMajorYearAdmission(SchoolMajorYearAdmission schoolMajorYearAdmission);
    
    /**
     * 新增年度学校录取情况
     * 
     * @param schoolYearAdmission 年度学校录取情况
     * @return 结果
     */
    public int insertSchoolMajorYearAdmissionList(List<SchoolMajorYearAdmission> list);
    
    public int insertSchoolMajorYearAdmission2023List(List<SchoolMajorYearAdmission> list);

    public int insertSchoolMajorYearAdmission2024List(List<SchoolMajorYearAdmission> list);
    
    /**
     * 修改年度学校各专业录取情况
     * 
     * @param schoolMajorYearAdmission 年度学校各专业录取情况
     * @return 结果
     */
    public int updateSchoolMajorYearAdmissionList(List<SchoolMajorYearAdmission> list);
    
    public int fixSchoolMajorCodeEmptyList(List<SchoolMajorYearAdmission> list);


    /**
     * 修改年度学校各专业录取情况
     * 
     * @param schoolMajorYearAdmission 年度学校各专业录取情况
     * @return 结果
     */
    public int updateSchoolMajorYearAdmission(SchoolMajorYearAdmission schoolMajorYearAdmission);

    /**
     * 删除年度学校各专业录取情况
     * 
     * @param id 年度学校各专业录取情况主键
     * @return 结果
     */
    public int deleteSchoolMajorYearAdmissionById(Long id);
    
    /**
     * 删除年度学校各专业录取情况
     * 
     * @param id 年度学校各专业录取情况主键
     * @return 结果
     */
    public int deleteSchoolMajorYearAdmissionByScodeYearBatch(SchoolMajorYearAdmission schoolMajorYearAdmission);

    /**
     * 批量删除年度学校各专业录取情况
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSchoolMajorYearAdmissionByIds(Long[] ids);
}
